Lecture 06

  • Lecture 05 recap
    • request-reply protocol
    • blocking, non-blocking, synchronous, asynchronous
  • Today's topic: Distributed objects and invocations
    • model, RMI, RPC, events & notification
    • Java RMI, CORBA, DCOM, Sun RPC
  • Middleware layer: (1) RMI, RPC, events (2) Request-reply protocol
    • "I'am developing distributed system" -> developing application or middleware
  • Object model:
    • Objects have attributes which have values. The values are states.
    • An (method) event can change object state
    • Events change local states and may change remote states
    • If a message changes remote state, the message is an event. Otherwise it is a notification.
    • A program is simply a set of states. The design of programing involves partitioning states.
  • Remote object reference
    • must be unique in space and time
    • (IP addr, port, time, object number, interface of remote objects)
  • Handling remote obejcts
    • communication exceptions
    • remote garbage collection
  • .......
  • Design issues of RMI
  • rendevous: tightly coupled processes